// Gin Api 接口练习

package main

import (
	"github.com/gin-gonic/gin" // 导入gin
)

func main() {

	gin.SetMode("release");

	route := gin.Default() // 创建默认路由

	route.GET("/", func(c *gin.Context) { // 定义 / 路由, 并写好执行的操作, gin.Context 用于获取 gin 的上下文, 对请求响应
		res := map[string]interface{}{
			"name": "jack",
			"age":  19,
		}
		c.JSON(200, res) // 以 JSON 格式响应客户端
	})

	route.POST("/test", func(c *gin.Context) { // POST 请求处理
		c.Header("Content-Type", "text/plain")             // 设置响应头
		c.String(200, "Hello , %s ! ", c.PostForm("name")) // PostForm , 从 POST 中取数据
	})

	route.GET("/main", func(c *gin.Context) {
		c.Header("Content-Type", "text/html")
		c.Header("X-Powered-By", "Go/1.11")
		c.String(200, "<!DOCTYPE html><html lang='zh-CN'><head><meta charset='utf-8'/><title>Gin</title></head><body>hello this is ok!!!</body></html>")
	})

	route.Run(":9005") // 监听 9005 端口, 不给参数则默认 0.0.0.0:8080

}
